A Verified Compiler for Synchronous Programs with Local Declarations

نویسندگان

  • Klaus Schneider
  • Jens Brandt
  • Tobias Schüle
چکیده

We describe the translation of Esterel-like programs with delayed actions to equivalent equation systems. Potential schizophrenia problems arising from local declarations are solved by (1) generating copies of the surface of the statement and (2) renaming the local variables in one of the copied surfaces generated a loop. The translation runs in quadratic time and has been formally verified with the HOL theorem prover.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Formal verification of automatically generated C-code from polychronous data-flow equations

Synchronous data-flow languages are used as design approaches in developing embedded and critical real-time systems in which synchronous programs are verified by applying formal verification. In a synchronous design approach, transformation and optimization are used to transform synchronous programs and generate general purpose executable code. The incorrectness of the transformations make the ...

متن کامل

Multi-Core Code Generation from Polychronous Programs with Time-Predictable Properties

Synchronous programming models capture concurrency in computation quite naturally, especially in its dataflow multi-clock (polychronous) flavor. With the rising importance of multi-core processors in safety-critical embedded systems or cyber-physical systems (CPS), there is a growing need for model-driven generation of multi-threaded code for multi-core systems. This paper proposes a build meth...

متن کامل

An uncaught exception analysis for Java q , qq

Current JDK Java compiler relies on programmer’s declarations (by throws clauses) for checking against uncaught exceptions of the input program. It is not elaborate enough to remove programmer’s unnecessary handlers nor suggest to programmers for specialized handlings (when programmer’s declarations are too broad). We propose a static analysis of Java programs that estimates their uncaught exce...

متن کامل

Verified Synthesis of Knowledge-Based Programs in Finite Synchronous Environments

Knowledge-based programs (KBPs) are a formalism for directly relating an agent’s knowledge and behaviour. Here we present a general scheme for compiling KBPs to executable automata with a proof of correctness in Isabelle/HOL. We develop the algorithm top-down, using Isabelle’s locale mechanism to structure these proofs, and show that two classic examples can be synthesised using Isabelle’s code...

متن کامل

Compiler verification for fun and profit

OF INVITED TALK Formal verification of software or hardware systems — be it by model checking, deductive verification, abstract interpretation, type checking, or any other kind of static analysis — is generally conducted over high-level programming or description languages, quite remote from the actual machine code and circuits that execute in the system. To bridge this particular gap, we all r...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Electr. Notes Theor. Comput. Sci.

دوره 153  شماره 

صفحات  -

تاریخ انتشار 2006